#coding=utf-8
'''
Created on 2017年12月13日

@author: yqm
'''
import warnings
import gensim
warnings.filterwarnings(action='ignore', category=UserWarning, module='gensim')
from gensim.models import word2vec

sentences = word2vec.Text8Corpus(u'G:/experiment/jieba/result.txt');  # 加载语料
#Word2Vec参数
# min-count 表示设置最低频率，默认为5，如果一个词语在文档中出现的次数小于该阈值，那么该词就会被舍弃
# size代表词词向量的维度
for i in range(50):
        model = word2vec.Word2Vec(sentences, size=10, min_count=0)
# model = word2vec.Word2Vec(sentences, size=10, min_count=0)
# str = model.build_vocab(sentences)
# print(str)
#计算两个词的相似度/相关程度
y2 = model.similarity("中国", "世界")
print(y2)

# 计算某个词的相关词列表 (参数topn=x 代表输出相关词的个数 ) 相似度从高到低
# i[o]词,i[1]位相似度
for i in model.most_similar("中国", topn=10):
    print('i[o]'+str(i[0])+' '+'i[1]'+str(i[1]))
    
# print(model.wv.vocab.keys())

# 保存训练好的模型,保存路径(和当前.py文件同级目录下)
# model.save('十九大.txt')
# model.save_word2vec_format('十九大.txt', fvocab, binary)
# 加载某个模型
# new_model = gensim.models.Word2Vec.load()

print(len(model['中国']))
print(type(model['中国']))
print(model['民族大义'])

#保存词和词向量为txt文件
model.wv.save_word2vec_format("123.txt", binary=False)












    